/*
 * Conversation.h
 *
 *  Created on: 31/01/2011
 *      Author: Nenem
 */

#ifndef CONVERSATION_H_
#define CONVERSATION_H_

#include "Tools.h"
#include "Direction.h"
#include "Talk.h"
#include <map>
using namespace std;

class Conversation {
private:
	map<int, Talk *> Talkers;
	int currentTalker;

public:
	bool addCollisioner(Talk *talk, int owner);
	void erase(int objID);
	Conversation();
	virtual ~Conversation();
	bool testTalk(int listener, Point2D listenerPoint, Direction *direction);
	bool updateTalk();
	void reset();

    int getCurrentTalker() const
    {
        return currentTalker;
    }

    map<int,Talk*> getTalkers() const
    {
        return Talkers;
    }

    void setTalkers(map<int,Talk*> Talkers)
    {
        this->Talkers = Talkers;
    }

};

#endif /* CONVERSATION_H_ */
